T-r-o-j-a-n是一款基于WebSocket的Daili工具,支持多用户、多端口、多协议、多路由、多实例、多负载均衡、多流量统计、多日志、多插件等功能。
Trojan
下载与配置
Trojan Github
Trojan Home
下载trojan-[版本号]-linux-amd64.tar.xz
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| cd /home/[yourUserName]/
wget https://repo.trojan-cdn.com/trojan-gfw/trojan/LatestRelease/trojan-[版本号]-linux-amd64.tar.xz
tar -xvf trojan-1.16.0-linux-amd64.tar.xz
cd trojan
cp config.json config.json_bak
vim config.json
:wq
|
启动服务
前台使用
后台使用
1 2 3 4 5
| # 启动 ./trojan &
# 关闭 pkill -f trojan
|
测试服务
开启前测试
我们可以浏览器访问ip.sb来查看此IP位置
开启后测试
trojan开启后,默认不会对系统进行全局代理(也不建议系统~/.bashrc配置文件中配置全局)
需要手动对于当前会话开启临时代理,设置完成后再进行网络访问,代理正常:
(注意:有时候如果发现等待很久,不要怀疑,可能是配置文件被屏蔽了,再换一个配置重新配置config.json再重启下即可)
1 2 3 4 5
| export http_proxy="socks5://127.0.0.1:1080" export https_proxy="socks5://127.0.0.1:1080"
unset http_proxy && unset https_proxy
|

灵活代理(进阶)
上述可以看见,http_proxy的代理配置,既不想让系统流量完全走代理,又想合适的时候使用代理,上线采用了export+unset的临时方案,当然我们也可以选择 proxychains 组件进行简单使用,而无需不想全局还想用,还得每次都export.
1 2 3 4 5 6 7 8 9 10 11
| sudo apt install proxychains -y vim /etc/proxychains.conf
socks5 127.0.0.1 1080 :wq
curl ip.sb
proxychains curl ip.sb
|
添加服务控制(进阶)
可以发现,每次服务器重启后,都需要执行/home/[yourUserName]/trojan/trojan &
进行服务启动,有没有什么可以系统代码控制,并且可以设置开机自启的方式?
systemctl
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| cd /etc/systemd/system sudo touch trojan.service sudo vim trojan.service
# 内容如下 ################################################################################## [Unit] Description=Trojan Server After=network.target
[Service] Type=simple User=ubuntu Group=ubuntu WorkingDirectory=/home/[yourUserName]/trojan ExecStart=/home/[yourUserName]/trojan/trojan -c /home/[yourUserName]/trojan/config.json #Restart=always # always时候,kill杀死了又会再起来 Restart=fail # 失败重启 RestartSec=3 LimitNOFILE=65536
[Install] WantedBy=multi-user.target #################################################################################
# 保存 :wq
# 重启systemctl服务 sudo systemctl daemon-reload # 启动Trojan服务 sudo systemctl start trojan # 查看Trojan服务 sudo systemctl status trojan # 停止Trojan服务 sudo systemctl stop trojan # 重启Trojan服务 sudo systemctl restart trojan
# 设置Trojan服务失败重启 sudo systemctl enable trojan
# 关闭Trojan服务失败重启 sudo systemctl disable trojan
|
下图可以看出,我们可以通过systemctl对trojan服务进行控制,